import random

from _ImgFactory.body import IM
from _Qfunc.file_batch import need_filelist     # 类型文件名
from _Qfunc.file_batch import file_rename       # 重命名
from _Qfunc.file_batch import num_filelist      # 顺序类型文件名

# 当前功能说明：重命名后顺序执行同级的.jpg文件，每张执行5次，强制RGB效果
"""
# 在这里操作吧~
# 后续有可能更新为一个方法工厂？~~~
# 或者我心情好写个图形界面吧...

_ImgFactory --- body    简易操作模式封装主体
              - func_s  展示方法，根据喜好修改

_JugMachine --- body    渲染器封装，根据喜好修改

_Qfunc -------- file_batch  文件批处理方法封装
              - path_func   模拟路径
              - pct_print   进度打印格式
              - same_func   一般方法
"""
asset_path = 'asset/'
trait_path = 'color_card/'
result_path = 'result/'

def asset_type_rename(type):
    lis = need_filelist(asset_path, type)
    if type.find('jpeg') != -1:
        file_rename(lis, '.png')
    else:
        file_rename(lis)

def funclist(func, num):
    """扩列某一func为数量列表"""
    lis = [func for i in range(num)]
    return lis

def parmlist(parm, num, step=0):
    """

    :param parm: 参数初始值
    :param num: 列表数量
    :param step: 间隔
    :return:
    """
    lis = []
    for i in range(num):
        lis.append([parm+i*step])
    return lis


a = IM(resp=result_path, card_p=trait_path)
assertlis = num_filelist(asset_path, '.jpg', [None, '.'])
name = need_filelist(trait_path, '.png')


for li in assertlis:
    a.floop(li, kind='RGB', func='s5')
    # a.color2gray(li, scale=4)
    # for n in name:
    #     a.gray2color(li, n)
    # a.rand_card(2 ** (4 + random.randint(0, 4)))
